
jQuery.Autotipsor={};
jQuery.Autotipsor.defaults={
	max:40,//查询/显示的最大行数
	type: '', //查询的tips数据类型
	width:200, //tips列表宽度
	scroll: true, //tips列表是否支持滚动
	separator:'   ', //tips列表里字段值的分隔符
    scrollHeight: 180, //tips列表滚动高度
	url: "comp/autotipsor.do",	//tips列表数据获取地址
	qfield: '',	//查询列表时候时的条件字段
	vfield: ''	//tips列表里显示的字段名
};
jQuery.fn.extend({
	   autotips: function(tips,refs) {
	   tips = jQuery.extend({},jQuery.Autotipsor.defaults,tips);
	   var vfields = tips.vfield.split(",");
	   console.log(tips);
	   jQuery(this).autocomplete(
	      tips.url,
		  {  //返回的数据格式必须为: [{字段名A:"字段值A",字段名B:"字段值B",...},...]
		     dataType: 'json',  
		     mustMatch: false,
		     multiple: false, 
		     max:tips.max,  
		     width:tips.width, 	     
		     extraParams: {type:tips.type},
		     parse: function(data) {
		     	if(!data)
		     	{
		     		return null;
		     	}
				var rows = [];
				var qValue;
				for(var i=0; i<data.length; i++){
				  qValue=eval("data[i]."+tips.qfield);
				  rows[rows.length] = {
				    data:data[i],
				    value:qValue,
				    result:qValue
				  };
				}
				return rows;
		        
		     },
		     formatItem: function(row, i, n) {
				var info="";
				for(i=0;i<vfields.length;i++)
				{          	
				  eval("info=info+tips.separator+row."+vfields[i]);
				}
				return info;  
		     }
	       }
	    );
	    
	   
	    if(refs && refs.length>0)
	    {
	    	
	    	 console.log(jQuery(this).attr("size"));
			jQuery(this).result(function(event, data, formatted) {
			    refs.each(function(){  
			    	console.log(data);
					    	var obj=jQuery(this);			    
					    	var field=obj.attr("rfield");			    
					    	var v=eval("data."+field);
					    	console.log(eval("data."+field));
					    	obj.val(v);
			    });
			});
	    
	    }
   }
});


jQuery(document).ready(function() {
   tipsObjs=jQuery(":text[tips]");
   tipsObjs.each(function(){ 
   		var tipsObj=jQuery(this);
   		var tipsInfo="{}";
	    try {  
	        eval("tipsInfo="+tipsObj.attr("tips"));
	        console.log("tipsInfo="+tipsObj.attr("tips"));
	    }catch(exception){  
	        alert("Input对象【ID: "+tipsObj.attr("id")+"】的tips信息配置出错.");
	        return ;
	    }
   		var refs=jQuery(":input[rfield][rtips="+tipsObj.attr("id")+"]");
   		console.log(refs);
   		tipsObj.autotips(tipsInfo,refs);
   });
  } 
);